package com.burst.reptile.modular.zp.entity;

import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;

import java.time.LocalDateTime;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.Size;

import java.io.Serializable;
import lombok.Data;
import lombok.EqualsAndHashCode;

/**
 * <p>
 * 意见反馈
 * </p>
 *
 * @author wujin
 * @since 2020-07-11
 */
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("zp_feedback")
public class ZpFeedback implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 主键ID
     */
    @TableId(value = "fid", type = IdType.AUTO)
    private Integer fid;

    /**
     * 意见内容
     */
    @NotBlank(message = "意见内容不能为空")
    @Size(min = 15, max = 500, message = "意见内容请输入15-500个字符")
    private String content;

    /**
     * 类别 1 信息分类 2 功能异常 3 创意点子 4 其他 
     */
    @NotBlank(message = "类别不能为空")
    @Size(min = 0, max = 1, message = "非法请求")
    private String ftype;

    /**
     * 图片json
     */
    private String imgurl;

    /**
     * 手机号
     */
    @Size(min = 0, max = 11, message = "手机号码不正确")
    private String phone;

    /**
     * 处理状态 1 待处理 2已处理
     */
    private String fstatus;

    /**
     * 处理结果
     */
    @Size(min = 0, max = 500, message = "处理结果请输入不能超过500个字符")
    private String fresult;
    
    /**
     * 创建时间
     */
    @TableField(fill = FieldFill.INSERT)
    private LocalDateTime createTime;


    /**
     * 处理人
     */
    @TableField(fill = FieldFill.UPDATE)
    private String updateUser;

    /**
     * 处理时间
     */
    @TableField(fill = FieldFill.UPDATE)
    private LocalDateTime updateTime;
    
    /**
     * 验证码
     */
    @TableField(exist = false)
    private String code;
    
    /**
     * 请求唯一标识
     */
    @TableField(exist = false)
    private String uuid;


}
